<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>异步加载数据</title>
    <!-- 引入 echarts.js -->
    <script src="https://cdn.jsdelivr.net/npm/echarts@5.0.2/dist/echarts.min.js"></script>

</head>
<body>
<a href="NiRoseDiagram.html" target="top" title="兰丁格尔图">兰丁格尔图</a>
<a href="DynamicUpdateData.html" target="top" title="动态加载数据">动态加载数据</a>
<!-- 为ECharts准备一个具备大小（宽高）的Dom -->
<div id="main" style="width: 600px;height:400px;"></div>
<script >
    // 基于准备好的dom，初始化echarts实例
    var myChart = echarts.init(document.getElementById('main'));
    function fetchData(cb) {
        // 通过 setTimeout 模拟异步加载
        setTimeout(function () {
            cb({
                categories: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"],
                data: [5, 20, 36, 10, 10, 20]
            });
        }, 1000);
    }


    // 初始 option
    option = {
        title: {
            text: '异步数据加载示例'
        },
        tooltip: {},
        legend: {
            data:['销量']
        },
        xAxis: {
            data: []
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: []
        }]
    };
    //使用echart默认的loading加载动画
    myChart.showLoading()
    fetchData(function (data) {
        //数据加载完之后使用myChart.hideLoading()进行隐藏
        myChart.hideLoading()
        myChart.setOption({
            xAxis: {
                data: data.categories
            },
            series: [{
                // 根据名字对应到相应的系列
                name: '销量',
                data: data.data
            }]
        });
    });

    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
</script>
</body>
</html>